The present invention generally relates to the field of data communications storage, and particularly to a method and apparatus for hardware speed selection behind a disk array controller for disk drive enclosures which use Fibre Channel Arbitrated Loop (FC-AL) interfaces.
Fibre Channel (FC) is a serial data communication network architecture and protocol for interconnecting computers and peripheral devices. Fibre Channel supports several protocols, including the Small Computer System Interface (SCSI) protocol, an ANSI standard for controlling peripheral devices by one or more host computers. The computer or peripheral devices are connected to the network through fibre channel ports or other means. Because of the high bandwidth and connection flexibility it offers, fibre channel is often used for connecting peripheral devices within multi-disk drive enclosures, such as redundant arrays of inexpensive disks (RAIDs), and for connecting multi-disk drive enclosures with one or more host computers.
There are three topologies of Fibre Channel: Point-to-Point, Arbitrated Loop, and Fabric. Fibre Channel Arbitrated Loop refers to the ANSI FC-AL document which specifies the Arbitrated Loop topology and is a shared architecture. Fibre Channel currently runs at 1 Gb or 2 Gb and may, in the future, run at 4 Gb or 10 Gb. Arbitrated Loop has become the most dominant Fibre Channel topology, but it is also the most complex. It offers a cost-effective way of connecting up to 127 ports in a single network.
Multi-disk drive enclosures offer good economy, good storage capacity, and redundancy that improve operational reliability; however, malfunctioning enclosures can, in certain cases, degrade or disable communications. In the prior art, enclosure services modules only detected that the drive was not communicating properly. Speed selection was based on a standard that was only defined to support point to point (limit 2 devices) configurations. It was also protocol intensive.
Therefore, it would be desirable to provide a method and system for changing disk drive operating speeds for a large group of drives behind a disk array controller without manual user intervention.
Accordingly, the present invention is directed to an apparatus having disk drives which are physically organized into multiple enclosures and a method for detecting and changing the data rates of the disk drives without manual user intervention.
In a first aspect of the present invention, a method is disclosed for adjusting the speed of operation of a first channel or loop for communicating with disk drives in a multi ported system organized into a plurality of enclosures and having a first channel connected in sequence from a disk array controller to a first enclosure services module and successively connected to successive first enclosure services modules to a last enclosure, including the step of detecting by a device associated with a corresponding first one of the plurality of enclosure services modules the data rate of incoming data from the disk array controller.
In a second aspect of the present invention, a system is disclosed for adjusting the speed of operation of a channel for communicating with disk drives in a multi ported system. The system includes a disk array controller having a first channel and a second channel and a plurality of first and second enclosure services modules. The first channel is formed in sequence from a disk array controller to a first enclosure services module of a first enclosure and between first enclosure services modules of successive enclosures to a last enclosure. Each one of the plurality of enclosure services modules has a port bypass device which makes a data rate determination of incoming data.
In a third aspect, a system for adjusting the speed of operation of a channel for communicating with disk drives in a multi ported system is disclosed. This system has a disk array controller having a first channel and a second channel and a plurality of enclosure services modules. The first channel is formed in sequence from a disk array controller to a first enclosure services module of a first enclosure and between first enclosure services modules of a successive enclosures to the last enclosure. The second channel is formed in reverse sequence from the disk array controller to the second enclosure services module of the last enclosure and between second enclosure services modules of successive enclosures to the first enclosure. This system operates according to the method having the steps of identifying the enclosure to receive the incoming data and, for the proper enclosure, detecting by a device the data rate of incoming data from the disk array controller, comparing the data rate of the incoming data with the current data of the enclosure services module, changing the data rate of the enclosure services module to that of the data rate of the incoming data, and checking the validity of the incoming data.
In a fourth aspect of the present invention, a system is disclosed for passing a signal to a chain of electrically connected devices having two channels. This system has a controller device and a plurality of subservient devices, each subservient device being able to determine the data rate of incoming data. The controller device is connected both in an open chain manner to the subservient devices in a forward order and in a physically separate reverse order. The controller device is a disk array controller and the subservient devices are enclosure services modules for disk drives.
It is to be understood that both the forgoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate an embodiment of the invention and together with the general description, serve to explain the principles of the invention.